package com.itheima.health.dao;

import com.github.pagehelper.Page;
import com.itheima.health.pojo.Permission;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

/**
 * @Author likepei
 * @Date 2020/2/19 10:57
 * @Version v1.0
 * @Description 权限的持久层接口
 */
public interface PermissionDao {
    /**
     * 基于角色id 获取所关联的权限集合
     * @param id
     * @return
     */
    Set<Permission> findByRoleId(@Param("id") Integer id);


   /*分页查询*/
    Page<Permission> selectByCondition(@Param("queryString") String queryString);

    /*添加权限*/
    void add(Permission permission);
    /*权限在中间表中受否被引用*/
    Long countPermissionDaoById(@Param("permissionId") Integer permissionId);
    /*删除权限*/
    void deleteById(@Param("id") Integer id);
    /*编辑数据回显*/
    Permission findById(@Param("id") Integer id);
    /*编辑权限*/
    void edit(Permission permission);


    /*
    * 查询所有权限
    * */
    List<Permission> findAllPermission();
}
